// [1, s] 范围内的数字中，不超过 3 位数不为零的数字有多少个
// 测试链接：https://codeforces.com/problemset/problem/1036/C

#include <bits/stdc++.h>

using namespace std;

long long cnt(string& s)
{
    int m = s.size();
    long long dp[m][19];
    memset(dp, -1, sizeof dp);
    // 这题不要考虑前导零
    function<long long(int, int, bool)> f = [&](int i, int cnt, int is_limit) -> long long
    {
        if(i == m) return cnt <= 3;
        if(!is_limit && dp[i][cnt] != -1) return dp[i][cnt];
        int up = is_limit ? s[i] - '0' : 9;
        long long ans = 0;
        for(int d = 0; d <= up; ++d)
        {
            ans += f(i + 1, cnt + (d != 0), is_limit && d == up);
        }
        if(!is_limit) dp[i][cnt] = ans;
        return ans;
    };

    return f(0, 0, true);
}

bool check(string& num)
{
    int count = 0;
    for(char ch : num)
    {
        if(ch != '0')
        {
            ++count;
            if(count > 3) return false;
        }
    }
    return true;
}

long long compute(string& L, string& R)
{
    long long ans = cnt(R) - cnt(L);
    if(check(L)) ++ans;
    return ans;
}

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);

    int k;
    cin >> k;
    string L, R;
    while(k--)
    {
        cin >> L >> R;
        printf("%lld\n", compute(L, R));
    }

    return 0;
}